package org.zjx.prop.domain.enums;

import lombok.Getter;

/**
 * 槽位状态枚举 - 定义槽位的不同状态
 * NORMAL: 正常可用状态
 * LOCKED: 锁定状态(不可操作)
 * COOLDOWN: 冷却中状态
 */
@Getter
public enum SlotStatus {
    NORMAL("正常可用状态"),
    LOCKED("锁定状态(不可操作)"),
    COOLDOWN("冷却中状态");

    private final String status;

    SlotStatus(String status) {
        this.status = status;
    }

    public static SlotStatus fromState(String status) {
        for (SlotStatus slotStatus : values()) {
            if (slotStatus.status.equals(status)) {
                return slotStatus;
            }
        }
        throw new IllegalArgumentException("Unknown slotStatus: " + status);
    }

    @Override
    public String toString() {
        return name(); // 使用枚举名称而不是status字段
    }
}